package top.itaso.app.ui.demos;

/**
 * @Description: Demo 示例 Item 数据结构体，如 Demo 示例 Title 、简介等
 * @Author itsdf07
 * @E-Mail 923255742@qq.com
 * @Github https://github.com/itsdf07
 * @Date 2021/11/30
 */
public class DemoItemDTO {
    public enum EDemoKey {
        DEMO_IWB_WIDGET("IWB UI", "IWB 自研产品的部分 UI 预研/实现 结果"),
        DEMO_BTNS("按钮、开关等示例", "1.各种按钮态以及效果展示"),
        DEMO_MULTI_LIST("多级列表示例", "基于 RecyclerView 实现的可无限级展开列表"),
        DEMO_MULTI_EXPANDABLE("二级列表示例", "基于 ExpandableListView 控件实现的可展开的二级列表"),
        DEMO_PROGRESSBAR_UPLOAD("进度条示例", "基于 ProgressBar 、自定义 View 、帧动画 等方式实现的进度交互控件 UI"),
        DEMO_APPS("Apps 列表", "遍历出系统中预装、后装等应用"),
        DEMO_WIFI_SCAN("Wifi 扫描示例", "如何扫描获取周边的 wifi/热点 信息"),
        DEMO_PICKER("Picker 示例", "基于 NumberPicker 实现的选择器，如 1.展示日期时间选择功能（含中文/数字）"),
        DEMO_FLOATING_WINDOW("Floating 示例", "1.依附 Activity 的悬浮窗，2.依附 Service 的悬浮窗"),
        DEMO_TTS("TTS 播报示例", "基于系统 TextToSpeak 实现的 TTS 功能"),
        DEMO_MEDIAPLAYER("MediaPlayer 示例", "1.依附 Activity 的悬浮窗，2.依附 Service 的悬浮窗"),;

        private String title;
        private String desc;

        /**
         * @param title 标题
         * @param desc  内容简介
         */
        EDemoKey(String title, String desc) {
            this.title = title;
            this.desc = desc;
        }

        public String getTitle() {
            return title;
        }

        public String getDesc() {
            return desc;
        }
    }

    private int order = 0;//排序
    private String author = "作者：itaso";//作者
    private String qa = "问答：itsdf07";
    /**
     *
     */
    private EDemoKey eKey;
    /**
     * 标记相关时间
     */
    private String createTime;
    /**
     * 是否置顶
     */
    private boolean isShowTop;
    /**
     * 是否受保护的，true-受保护的，false-不受保护的
     */
    private boolean isPrivateModule = false;

    public DemoItemDTO(int order, String author, String qa, EDemoKey eKey, String createTime, boolean isShowTop) {
        this.order = order;
        this.author = author;
        this.qa = qa;
        this.eKey = eKey;
        this.createTime = createTime;
        this.isShowTop = isShowTop;
    }

    public int getOrder() {
        return order;
    }

    public void setOrder(int order) {
        this.order = order;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public String getQa() {
        return qa;
    }

    public void setQa(String qa) {
        this.qa = qa;
    }

    public EDemoKey getEKey() {
        return eKey;
    }

    public void setEKey(EDemoKey eKey) {
        this.eKey = eKey;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public boolean isShowTop() {
        return isShowTop;
    }

    public void setShowTop(boolean showTop) {
        isShowTop = showTop;
    }

    public boolean isPrivateModule() {
        return isPrivateModule;
    }

    public void setPrivateModule(boolean privateModule) {
        isPrivateModule = privateModule;
    }
}
